home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / zbpc_460.zip / DEMOS.EXE / DOLLARS.BAS < prev    next >
BASIC Source File  |  1991-04-13  |  2KB  |  78 lines

  1. 'Routine to translate numbers to dollars and cents in verb
  2.  
  3. DIM Word$(28): FOR I%=2 TO 28: READ Word$(I%): NEXT
  4. DATA twenty,thirty,forty,fifty,sixty,seventy,eighty,ninenty
  5. DATA one,two,three,four,five,six,seven,eight,nine,ten,eleven,twelve,            THIRTEEN,FOURTEEN,FIFTEEN,SIXTEEN,SEVENTEEN,EIGHTEEN,NINETEEN
  6.  
  7. CLS
  8. "Input"
  9. INPUT "Enter amount  "; Sum# : IF Sum# = 0 END
  10. P$ = "": IF Sum# <= 198000000000000# LSum#=Sum#
  11. Cents%=INT((LSum#-INT(LSum#))*100#+.5#)  :LSum#=INT(LSum#)
  12. LONGIF LSum#
  13.   GOSUB "Calc"
  14.   IF LSum# > 1 P$ = P$ + "dollars and " ELSE P$ = P$ + "dollar and "
  15. ENDIF
  16. LONGIF Cents%
  17.   X$ = "0"+MID$(STR$(Cents%),2,2)
  18.   LSum# = VAL (X$)
  19.   GOSUB "Calc"
  20. XELSE
  21.   P$=P$+"no "
  22. ENDIF
  23.   IF LSum# > 1 P$ = P$ + "cents" ELSE P$ = P$ + "cent"
  24. LONGIF LEN(P$)
  25.   PRINT P$
  26.   PRINT
  27. XELSE
  28.   PRINT "Exceeds accuracy limits, use a smaller number!"
  29. ENDIF
  30. GOTO "Input"
  31.  
  32. "Calc"
  33. LONG IF LSum# > 999999999999#
  34.   T5# = LSum#-INT(LSum#/1000000000000#)*1000000000000#
  35.   LSum# = INT(LSum#/1000000000000#)
  36.   GOSUB "Calc"
  37.   P$ =P$ + "trillion "
  38.   LSum# = T5#
  39. ENDIF
  40. LONGIF LSum# > 999999999#
  41.   T4# = LSum#-INT(LSum#/1000000000#)*1000000000#
  42.   LSum# = INT(LSum#/1000000000#)
  43.   GOSUB "Calc"
  44.   P$ = P$ + "billion "
  45.   LSum# = T4#
  46. ENDIF
  47. LONGIF LSum# > 999999#
  48.   T3# = LSum#-INT(LSum#/1000000#)*1000000#
  49.   LSum# = INT(LSum#/1000000#)
  50.   GOSUB "Calc"
  51.   P$ = P$ + "million "
  52.   LSum# = T3#
  53. ENDIF
  54. LONGIF LSum# > 999#
  55.   T2# = LSum#-INT(LSum#/1000#)*1000#
  56.   LSum# = INT(LSum#/1000#)
  57.   GOSUB "Calc"
  58.   P$ = P$ + "thousand "
  59.   LSum# = T2#
  60. ENDIF
  61. LONGIF LSum# > 99#
  62.   T1# = LSum#
  63.   LSum# = INT(LSum#/100#)
  64.   GOSUB "Calc"
  65.   P$ = P$ + "hundred "
  66.   LSum# = T1#-LSum#*100#
  67. ENDIF
  68. LONG IF LSum# > 19#
  69.   P$ = P$ + Word$(INT(LSum#/10#)): LSum# = LSum#-10#*INT(LSum#/10#)
  70.   LONGIF LSum#
  71.     P$ =P$ + "-"
  72.   XELSE
  73.     P$=P$ +" "
  74.   ENDIF
  75. ENDIF
  76. IF LSum# P$ = P$ + Word$(LSum#+9#)+" "
  77. RETURN
  78.